package questions

// TrueFalseQuestion 判断题实现
type TrueFalseQuestion struct {
	BaseQuestion `json:",inline"`  // 嵌入基础题目结构
	Settings     *TrueFalseSetting `json:"settings"` // 具体设置
}

// TrueFalseSetting 判断题设置
type TrueFalseSetting struct {
	Statement     string `json:"statement"`     // 判断陈述
	TrueLabel     string `json:"trueLabel"`     // "正确"选项标签
	FalseLabel    string `json:"falseLabel"`    // "错误"选项标签
	CorrectAnswer bool   `json:"correctAnswer"` // 正确答案
	Explanation   string `json:"explanation"`   // 解释说明
	Required      bool   `json:"required"`      // 是否必填
	LabelAlign    string `json:"labelAlign"`    // 标签对齐方式：left, center, right
}

func (t TrueFalseSetting) GetType() QuestionType {
	return TrueFalse
}

// TrueFalseAnswer 判断题答案
type TrueFalseAnswer struct {
	Value bool `json:"value"` // true 或 false
}

// GetSettings 方法实现Question接口
func (tq TrueFalseQuestion) GetSettings() *TrueFalseSetting {
	return tq.Settings
}
